# # Function Get-LatestFileFiltered_WriteMenuLine_and_TomcatName { param ($MenuLine, $RecursiveRootFolder, $DirFilter) $returnDir = dir $RecursiveRootFolder -filter $DirFilter -rec|Sort {[datetime]$_.lastwritetime } -desc|Select-Object -First 1 write-host $MenuLine -NoNewline; if ($returnDir) {write-host $returnDir.LastWriteTime (get-item $returnDir.fullname).directory.parent} else {write-host "N/a"} return $returnDir } function Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion { param ($MenuLine, $RecursiveRootFolder, $DirFilter) $returnDir = dir $RecursiveRootFolder -filter $DirFilter -rec|Sort {[datetime]$_.lastwritetime } -desc|Select-Object -First 1 write-host $MenuLine -NoNewline; if ($returnDir) {write-host $returnDir.LastWriteTime (get-item $returnDir.fullname).directory.parent.parent} else {write-host "N/a"} return $returnDir } function Get-LatestFileFiltered_WriteMenuLine_and_ExchSyncName { param ($MenuLine, $RecursiveRootFolder, $DirFilter) $returnDir = dir $RecursiveRootFolder -filter $DirFilter -rec|Sort {[datetime]$_.lastwritetime } -desc|Select-Object -First 1 write-host $MenuLine -NoNewline; if ($returnDir) {write-host $returnDir.LastWriteTime (get-item $returnDir.fullname).directory.parent.parent.parent (get-item $returnDir.fullname).directory.parent} else {write-host "N/a"} return $returnDir } function Get-LatestFileFiltered_WriteMenuLine_and_DMGUIVersion { param ($MenuLine, $RecursiveRootFolder, $DirFilter) $returnDir = dir $RecursiveRootFolder -filter $DirFilter -rec|Sort {[datetime]$_.lastwritetime } -desc|Select-Object -First 1 write-host $MenuLine -NoNewline; if ($returnDir) {write-host $returnDir.LastWriteTime (get-item $returnDir.fullname).directory.Name} else {write-host "N/a"} return $returnDir } function Get-LatestFileFiltered_WriteMenuLine_and_ZyDeskLogUser { param ($MenuLine, $RecursiveRootFolder, $DirFilter) $returnDir = dir $RecursiveRootFolder -filter $DirFilter -rec|Sort {[datetime]$_.lastwritetime } -desc|Select-Object -First 1 write-host $MenuLine -NoNewline; if ($returnDir) {write-host $returnDir.LastWriteTime (get-item $returnDir.fullname).directory.parent.parent.parent.parent.parent} else {write-host "N/a"} return $returnDir } function Do-KeyPressEvents { while ([console]::KeyAvailable -and $script:continue) { $script:refresh = $true $key = [System.Console]::ReadKey() # Prevent double paste. Stop if a # or F char is pasted into the script. First char of this script should be # or F if ($key.key -eq "D3" -and $key.modifiers -eq "Shift") {$script:continue = $false} if ($key.key -eq "F" -and $key.modifiers -eq "Shift") {$script:continue = $false} if ($script:continue) { switch -casesensitive ( $key.key ) { Q { $script:continue = $false} F1 { & $EditorPath $zdau.FullName} F2 { & $EditorPath $zd.FullName} F3 { & $EditorPath $zdpj.FullName} F4 { & $EditorPath $zdsu.FullName} D1 { & $EditorPath $auth.FullName} D2 { & $EditorPath $cds.FullName} D3 { & $EditorPath $cux.FullName} D4 { & $EditorPath $gk.FullName} D5 { & $EditorPath $gke.FullName} D6 { & $EditorPath $mp.FullName} D7 { & $EditorPath $mps.FullName} D8 { & $EditorPath $sp.FullName} D9 { & $EditorPath $id.FullName} A { & $EditorPath $zds.FullName} B { & $EditorPath $zx.FullName} C { & $EditorPath $zxc.FullName} D { & $EditorPath $zyte.FullName} E { & $EditorPath $as.FullName} F { & $EditorPath $bds.FullName} G { & $EditorPath $bup.FullName} H { & $EditorPath $dm.FullName} I { & $EditorPath $ds.FullName} J { & $EditorPath $eqh.FullName} K { & $EditorPath $ews.FullName} L { & $EditorPath $fwd.FullName} M { & $EditorPath $mbp.FullName} N { & $EditorPath $qm.FullName} O { & $EditorPath $sm.FullName} P { & $EditorPath $lcqh.FullName} S { & $EditorPath $lmn.FullName} T { & $EditorPath $lux.FullName} U { & $EditorPath $sux.FullName} V { & $EditorPath $xqh.FullName} W { & $EditorPath $xux.FullName} X { & $EditorPath $zg.FullName} } } } } # Main $script:continue = $true $script:refresh=$true while($script:continue) { if (Test-Path "C:\Program Files\Notepad++\notepad++.exe"){$EditorPath="C:\Program Files\Notepad++\notepad++.exe"} else {if (Test-Path "C:\Program Files (x86)\Notepad++\notepad++.exe") {$EditorPath="C:\Program Files (x86)\Notepad++\notepad++.exe"} else {$EditorPath="C:\Windows\System32\notepad.exe"}} if ($script:refresh) { $script:refresh=$false Clear-Host Write-Host "ZyDesk logs Date modified ZyDesk User" Write-Host $zdau=Get-LatestFileFiltered_WriteMenuLine_and_ZyDeskLogUser "F1: ZyDesk autoupdate " ($Env:AppData + "\Zylinc") "autoupdate*.*" $zd= Get-LatestFileFiltered_WriteMenuLine_and_ZyDeskLogUser "F2: ZyDesk main " ($Env:AppData + "\Zylinc") "main*.*" $zdpj=Get-LatestFileFiltered_WriteMenuLine_and_ZyDeskLogUser "F3: ZyDesk pjsip " ($Env:AppData + "\Zylinc") "pjsip*.*" $zdsu=Get-LatestFileFiltered_WriteMenuLine_and_ZyDeskLogUser "F4: ZyDesk startup " ($Env:AppData + "\Zylinc") "main_startup*.*" Do-KeyPressEvents if (Test-Path "C:\Program Files\Zylinc\") { Write-Host Write-Host "Tomcat services logs Date modified Tomcat instance name" Write-Host $auth=Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "1: Authentication Server " "C:\Program Files\Zylinc\ApacheInstances" "Authentication.log*" $cds= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "2: Cisco Directory Sync " "C:\Program Files\Zylinc\ApacheInstances" "CiscoDirSync.log*" $cux= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "3: Cisco User Proxy " "C:\Program Files\Zylinc\ApacheInstances" "CiscoUserProxy.log*" $gk = Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "4: Client Manager " "C:\Program Files\Zylinc\ApacheInstances" "ClientManager-main.log*" $gke= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "5: Client Manager extra " "C:\Program Files\Zylinc\ApacheInstances" "ClientManager-extra.log*" $mp= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "6: Messaging Portal " "C:\Program Files\Zylinc\ApacheInstances" "MessagingPortal.log*" Do-KeyPressEvents $mps= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "7: Messaging Portal stats " "C:\Program Files\Zylinc\ApacheInstances" "MessagingPortal-stats.log*" $sp= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "8: Statistics Portal " "C:\Program Files\Zylinc\ApacheInstances" "StatisticsPortal.log*" $id= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "9: ZyCore ID " "C:\Program Files\Zylinc\ApacheInstances" "ZyCoreID.log*" $zds= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "A: ZyDataService " "C:\Program Files\Zylinc\ApacheInstances" "ZyDataService.log*" $zx= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "B: Zylinc Proxy " "C:\Program Files\Zylinc\ApacheInstances" "ZylincProxy.log*" $zxc= Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "C: Zylinc Proxy Client " "C:\Program Files\Zylinc\ApacheInstances" "ZylincProxyClient.log*" $zyte=Get-LatestFileFiltered_WriteMenuLine_and_TomcatName "D: ZyTe " "C:\Program Files\Zylinc\ApacheInstances" "Zyte.log*" Do-KeyPressEvents } if (Test-Path "C:\ProgramData\Zylinc") { Write-Host Write-Host "Windows services logs Date modified Service version" write-host $as= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "E: Activity Server " "C:\ProgramData\Zylinc\ActivityServer" "ActivityServer*log*.*" $bds= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "F: BroadWorks Directory Sync " "C:\ProgramData\Zylinc\BroadWorksDirSync" "BroadWorksDirSyncLog*.*" $bup= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "G: BroadWorks User Proxy " "C:\ProgramData\Zylinc\BroadWorksUserProxy" "BroadWorksUserProxyLog*.*" $dm= Get-LatestFileFiltered_WriteMenuLine_and_DMGUIVersion "H: Deployment Manager (GUI) " "C:\ProgramData\Zylinc\DeploymentManager" "DeploymentManagerLog*.*" $ds= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "I: Directory Server " "C:\ProgramData\Zylinc\DirectoryServer" "DirServLog_DirectoryServer*.*" Do-KeyPressEvents $eqh= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "J: E-mail Queue Handler " "C:\ProgramData\Zylinc\EmailQueueHandler" "EmailQueueHandlerLog*.*" $ews= Get-LatestFileFiltered_WriteMenuLine_and_ExchSyncName "K: Exchange Sync Web service " "C:\ProgramData\Zylinc\ExchSync" "*_log_*.*" $fwd= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "L: Forwarding Server " "C:\ProgramData\Zylinc\ForwardingServer" "ZyCoreForwardingServer*.*" $mbp= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "M: Mobile Presence " "C:\ProgramData\Zylinc\MobilePresence" "MobServLog_MobilePresence*.*" $qm= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "N: Queue Manager " "C:\ProgramData\Zylinc\QueueManager" "QueueManager*.log*" $sm= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "O: Service Manager " "C:\ProgramData\Zylinc\ServiceManager" "ServiceManager*.txt*" Do-KeyPressEvents $lcqh=Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "P: SfB Chat Queue Handler " "C:\ProgramData\Zylinc\LyncChatQueueHandler" "LyncChatQueueHandlerLogFile*.*" $lmn= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "S: SfB MSPL Manager " "C:\ProgramData\Zylinc\LyncMsplManager" "LyncMsplManager*.*" $lux= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "T: SfB User Proxy " "C:\ProgramData\Zylinc\LyncUserProxy" "LyncUserProxyLogFile*.*" $sux= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "U: SIP User Proxy " "C:\ProgramData\Zylinc\SipUserProxy" "SipUserProxyLogFile*.*" $xqh= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "V: XMPP Queue Handler " "C:\ProgramData\Zylinc\XmppQueueHandler" "XmppQueueHandler*.*" $xux= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "W: XMPP User Proxy " "C:\ProgramData\Zylinc\XmppUserProxy" "XmppUserProxy*.*" $zg= Get-LatestFileFiltered_WriteMenuLine_and_WinServiceVersion "X: ZyGo " "C:\ProgramData\Zylinc\Zygo" "Zygo*.log*" Do-KeyPressEvents } write-host write-host "Other commands:" Write-Host write-host "R: Refresh" write-host "Q: Quit" write-host write-host "Type the key next to the logfile you want to open> " -NoNewline } sleep -Milliseconds 1000 Do-KeyPressEvents } # #